#if !defined(ximera_config_compiler_vc_hpp)
#define ximera_config_compiler_vc_hpp

// -----------------------------------------------------------

#define XIMERA_PRAGMA_COMMENT_LIB

#if XIMERA_MSVC == 1300
	#define XIMERA_MSVC_7
    #define XIMERA_COMPILER_NAME "vc7"
    #define XIMERA_COMPILER_NAME_W L"vc7"

#elif XIMERA_MSVC == 1310
	#define XIMERA_MSVC_71
    #define XIMERA_COMPILER_NAME "vc71"
    #define XIMERA_COMPILER_NAME_W L"vc71"

#elif XIMERA_MSVC == 1400
	#define XIMERA_MSVC_8
    #define XIMERA_COMPILER_NAME "vc8"
    #define XIMERA_COMPILER_NAME_W L"vc8"

#elif XIMERA_MSVC == 1500
	#define XIMERA_MSVC_9
	#define XIMERA_COMPILER_NAME "vc9"
	#define XIMERA_COMPILER_NAME_W L"vc9"
#endif

#if XIMERA_MSVC >= 1310
    #define XIMERA_HAS_LONG_LONG
#endif

#if XIMERA_MSVC >= 1400 && !defined(XIMERA_MSVC_8_DEPRECATE)
	#if !defined(_SCL_SECURE_NO_DEPRECATE)
	#define _SCL_SECURE_NO_DEPRECATE
	#endif

	#if !defined(_CRT_SECURE_NO_DEPRECATE)
	#define _CRT_SECURE_NO_DEPRECATE
	#endif

	#if !defined(_SCL_SECURE_NO_WARNINGS)
	#define _SCL_SECURE_NO_WARNINGS
	#endif

	#if !defined(_CRT_SECURE_NO_WARNINGS)
	#define _CRT_SECURE_NO_WARNINGS
	#endif
#endif

#if defined(XIMERA_POCKETPC) || (defined(XIMERA_MSVC) && (XIMERA_MSVC < 1300))
    #define XIMERA_FUNCTION ""

#else
    #define XIMERA_FUNCTION __FUNCTION__
#endif

#if defined(XIMERA_POCKETPC) || XIMERA_MSVC < 1300
    #define XIMERA_FILE ""

#else
    #define XIMERA_FILE __FILE__
    #define XIMERA_LINE __LINE__
#endif

#pragma warning(disable : 4786)
#pragma warning(disable : 4251)   // class 'X' needs to have dll-interface to be used by clients of class 'Y'

// -----------------------------------------------------------

#endif